package org.resort.dao;

import org.apache.ibatis.annotations.Param;
import org.resort.entity.Member;

import java.util.List;

/**
 * @Author 郭文虎
 */
public interface MemberDao extends CommonDao<Member> {

    /**
     * 多条件分页查询会员
     *
     * @param stateId 状态编号
     * @param levelId 等级编号
     * @param name    会员姓名
     * @param offset  偏移量
     * @param limit   第页显示条数
     * @return 满足条件的会员集合
     */
    List<Member> getPartMemberByCondition(@Param("stateId") int stateId, @Param("levelId") int levelId, @Param("name") String name, @Param("offset") int offset, @Param("limit") int limit);

    /**
     * 根据条件获取会员总条数
     *
     * @param stateId 状态编号
     * @param levelId 等级编号
     * @param name    会员姓名
     * @return 总条数
     */
    int countMemberByCondition(@Param("stateId") int stateId, @Param("levelId") int levelId, @Param("name") String name);

    /**
     * 添加一名会员
     * @param member 将要添加的会员对象
     * @return 受影响行数
     */
    int addOneMember(@Param("member") Member member);
}
